import request from '@/config/axios'

// 跨境电商平台订单映射 VO
export interface PlatformOrderMappingVO {
  id: number // 映射编号
  platformId: number // 平台编号
  storeId: number // 店铺编号
  localOrderId: number // 本地订单ID
  localOrderNo: string // 本地订单号
  platformOrderId: string // 平台订单ID
  platformOrderNo: string // 平台订单号
  platformTransactionId: string // 平台交易ID
  mappingStatus: number // 映射状态（0未映射 1已映射 2映射失败）
  syncStatus: number // 同步状态（0未同步 1同步中 2同步成功 3同步失败）
  lastSyncTime: Date // 最后同步时间
  syncErrorMsg: string // 同步错误信息
  platformStatus: string // 平台订单状态
  platformPaymentStatus: string // 平台支付状态
  platformFulfillmentStatus: string // 平台履约状态
  platformTotalAmount: number // 平台订单总金额
  platformCurrency: string // 平台货币
  platformCreatedTime: Date // 平台创建时间
  platformUpdatedTime: Date // 平台更新时间
  autoSync: boolean // 是否自动同步
}

// 跨境电商平台订单映射 API
export const PlatformOrderMappingApi = {
  // 查询跨境电商平台订单映射分页
  getPlatformOrderMappingPage: async (params: any) => {
    return await request.get({ url: `/crossborder/platform-order-mapping/page`, params })
  },

  // 查询跨境电商平台订单映射详情
  getPlatformOrderMapping: async (id: number) => {
    return await request.get({ url: `/crossborder/platform-order-mapping/get?id=` + id })
  },

  // 新增跨境电商平台订单映射
  createPlatformOrderMapping: async (data: PlatformOrderMappingVO) => {
    return await request.post({ url: `/crossborder/platform-order-mapping/create`, data })
  },

  // 修改跨境电商平台订单映射
  updatePlatformOrderMapping: async (data: PlatformOrderMappingVO) => {
    return await request.put({ url: `/crossborder/platform-order-mapping/update`, data })
  },

  // 删除跨境电商平台订单映射
  deletePlatformOrderMapping: async (id: number) => {
    return await request.delete({ url: `/crossborder/platform-order-mapping/delete?id=` + id })
  },

  // 批量删除跨境电商平台订单映射
  deletePlatformOrderMappingList: async (ids: number[]) => {
    return await request.delete({ url: `/crossborder/platform-order-mapping/delete-batch`, data: ids })
  },

  // 导出跨境电商平台订单映射 Excel
  exportPlatformOrderMapping: async (params) => {
    return await request.download({ url: `/crossborder/platform-order-mapping/export-excel`, params })
  },
}
